package com.t.bricks.bussiness.service.flowwork;

import com.t.bricks.bussiness.service.common.BaseService;
import com.t.bricks.model.MsgEmity;

/**
 * 流程实例FlowWork表基本业务操作类接口定义
 */
public interface FlowWorkService<T> extends BaseService<T> {

	/**
	 * 新增
	 * @param sDefineSign 所用流程标识
	 * @param sInitiateDescription 发起节点的描述
	 * @return MsgEmity
	 */
	MsgEmity addWork(String sDefineSign, String sInitiateDescription);

	/**
	 * 删除
	 * @param iVersion 数据版本号
	 * @param uId 记录编号
	 * @param onlyCreator 仅允许创建者操作
	 * @return MsgEmity
	 */
	MsgEmity del(Integer iVersion, String uId);

	/**
	 * 修改状态
	 * @param uId 编号
	 * @param iState 状态值
	 * @param iVersion 记录版本号
	 * @param sMemo 备注
	 * @return MsgEmity 返回执行情况
	 */
	MsgEmity changeState(String uId, Integer iState, Integer iVersion, String sMemo);
	
}
